package com.atdfrz.secondshop.service;

import com.atdfrz.secondshop.pojo.User;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.security.sasl.SaslServer;
import javax.servlet.http.HttpSession;

/**
 *
 */
public interface UserService extends IService<User> {
//    User queryByUserNameAndPassWord(User user);

    /**
     * 用户注册
     * @param user 用户数据
     */
    void reg(User user);

    /**
     * 用户登录
     * @param username 用户名
     * @param password 密码
     * @return 登录成功的用户数据
     */
    User login(String username, String password);

    /**
     * 修改密码
     * @param userid 当前登录的用户id
     * @param username 用户名
     * @param oldPassword 原密码
     * @param newPassword 新密码
     */
    public void changePassword(Integer userid, String username, String oldPassword, String newPassword);

    /**
     * 获取当前登录的用户的信息
     * @param userid 当前登录的用户的id
     * @return 当前登录的用户的信息
     */
    User getByUid(Integer userid);

    /**
     * 忘记密码
     * @param userid 用户ID
     * @param username 用户名
     * @param newPassword 用户新密码
     */
    void forgetPassword(Integer userid,String username, String newPassword);
    /**
     * 根据用户名查询用户信息
     * @param username 用户名
     */
    User getByUserName(String username);
    /**
     * 根据用户注册手机和邮箱来查询用户信息
     * @param phone 手机
     * @param email 邮箱
     *
     */
    User getByPhoneAndEmail(String phone , String email);
    /**
     * 修改用户资料
     * @param userid 当前登录的用户的id
     * @param username 当前登录的用户名
     * @param user 用户的新的数据
     */
    void changeInfo(Integer userid, String username, User user);

    /**
     * 修改用户头像
     * @param userid 当前登录的用户的id
     * @param username 当前登录的用户名
     * @param photo 用户的新头像的路径
     */
    void changeAvatar(Integer userid, String username, String photo);

}
